package com.qwt.part_time_api.service;

import com.qwt.part_time_api.error.BusinessException;
import com.qwt.part_time_api.pojo.User;
import com.qwt.part_time_api.vo.Result;

import java.util.List;

/**
 * @Author 君子慎独
 * @create 2021/12/24 0024 18:11
 */
public interface UserService {
    /**
     * 根据userId查询用户信息
     *
     * @param id 用户id
     * @return json
     */
    Result findUserInfoById(Long id);

    /**
     * 根据用户名查询用户
     *
     * @param account 账户
     * @return 用户对象
     */
    User findUserInfoByUserName(String account);

    /**
     * 根据token 查询
     *
     * @param account token
     * @return loginVo
     */
    Result findUserByToken(String account);

    /**
     * 添加用户
     *
     * @param user 用户
     * @return int
     */
    int saveUser(User user);

    /**
     * 获取用户账号ID
     *
     * @param account 账号
     * @return id
     * @throws BusinessException 异常
     */
    Long getUserIdByAccount(String account) throws BusinessException;
}
